type ObjType = { [k: string]: any };
const test5: ObjType = { name: 1 };
test5;

type AppendToObject<T extends ObjType, K extends string, V extends any> = {
  [P in keyof T | K]: P extends keyof T ? T[P] : V;
};
type InfoType = {
  name: "1";
};
type AT1 = AppendToObject<InfoType, "age", 20>;
type AT2 = AppendToObject<InfoType, "has", boolean>;
